package com.youxin.busfoundation.bean;

import java.util.Date;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;

/**
 * 客户端基础日志收集类
 * 
 * @author yingde.cao
 *
 */
// @JsonIgnoreProperties(ignoreUnknown = true)
public class BaseLogBean {

	/** 产品模块标识,模块标识由产品定义 */
	private String identifier;

	public String getIdentifier() {
		return identifier;
	}

	public void setIdentifier(String identifier) {
		this.identifier = identifier == null ? null : identifier.trim();
	}

	/** 用户主键id */
	@JsonProperty(value = "user_id")
	private String userId;

	/** 用户名称 */
	@JsonProperty(value = "user_name")
	private String userName;
	
	@JsonProperty(value = "trace_id")
	private long traceId;
	public long getTraceId() {
		return traceId;
	}

	public void setTraceId(long traceId) {
		this.traceId = traceId;
	}

	public String getUserId() {
		return userId;
	}

	public void setUserId(String userId) {
		this.userId = userId == null ? null : userId.trim();
	}

	public String getUserName() {
		return userName;
	}

	public void setUserName(String userName) {
		this.userName = userName == null ? null : userName.trim();
	}

	/** 事件操作,1表示点击,2表示双击 */
	@JsonProperty(value = "event_type")
	private Integer eventType;

	/** 事件结果,点击链接 */
	@JsonProperty(value = "event_content")
	private String eventContent;

	public Integer getEventType() {
		return eventType;
	}

	public void setEventType(Integer eventType) {
		this.eventType = eventType;
	}

	public String getEventContent() {
		return eventContent;
	}

	public void setEventContent(String eventContent) {
		this.eventContent = eventContent == null ? null : eventContent.trim();
	}

	/** 用户所在城市 */
	private String city;

	public String getCity() {
		return city;
	}

	public void setCity(String city) {
		this.city = city == null ? null : city.trim();
	}

	/** 经度 */
	private Double lat;

	public Double getLat() {
		return lat;
	}

	public void setLat(Double lat) {
		this.lat = lat;
	}

	/** 纬度 */
	private Double lng;

	public Double getLng() {
		return lng;
	}

	public void setLng(Double lng) {
		this.lng = lng;
	}

	/** 页面来源 */
	@JsonProperty(value = "referer_url")
	private String refererUrl;

	public String getRefererUrl() {
		return refererUrl;
	}

	public void setRefererUrl(String refererUrl) {
		this.refererUrl = refererUrl == null ? null : refererUrl.trim();
	}

	/** 埋点说明 */
	private String description;

	public String getDescription() {
		return description;
	}

	public void setDescription(String description) {
		this.description = description == null ? null : description.trim();
	}

	 /** 标识,0线上环境,1预发布环境,2测试环境,3开发环境 */
    private Integer flag;

	public Integer getFlag() {
		return flag;
	}

	public void setFlag(Integer flag) {
		this.flag = flag;
	}

	private String params;

	private int code;
	private String msg;
	private String token;
	private String url;

	public String getParams() {
		return params;
	}

	public void setParams(String params) {
		this.params = params;
	}

	public int getCode() {
		return code;
	}

	public void setCode(int code) {
		this.code = code;
	}

	public String getMsg() {
		return msg;
	}

	public void setMsg(String msg) {
		this.msg = msg;
	}

	public String getToken() {
		return token;
	}

	public void setToken(String token) {
		this.token = token;
	}

	public String getUrl() {
		return url;
	}

	public void setUrl(String url) {
		this.url = url;
	}

}
